#ifndef MYCANVAS_H
#define MYCANVAS_H

#include <QWidget>
#include <QPainter>
#include <QList>
#include <random.h>
#include <QTableWidgetItem>
#include <QGenericMatrix>
#include <QMouseEvent>
#include <lista.h>
class MyCanvas : public QWidget
{
    Q_OBJECT
public:
    explicit MyCanvas(QWidget *parent = 0, QTableWidget* =0);
    ~MyCanvas();
    QList<Punto>* puntos;
    QTableWidget* items;
    bool pintar;
    int cantpuntos;
    virtual void paintEvent(QPaintEvent* pEvent);
    double cambiarSistemaCoordenadas(double coordenada, double cotainferiorvieja, double cotasuperiorvieja, double cotainferiornueva, double cotasuperiornueva);
    int x_canvas(double x_funcion, QSize* size);
    int y_canvas(double y_funcion, QSize* size);
    double x_funcion(int x_canvas, QSize* size);
    double y_funcion(int y_canvas, QSize* size);
    double x_cotainferior;
    double x_cotasuperior;
    double y_cotainferior;
    double y_cotasuperior;
private:
    Punto puntosig(Punto puntoanterior);
    QLineEdit* x0;
    QLineEdit* y0;
    int matrizSig();
    Random* r;


signals:

public slots:

};

#endif // MYCANVAS_H
